package com.strato.osgi.scanner.v1_0_0;

import org.osgi.framework.Bundle;
import org.osgi.framework.BundleContext;

public interface FrameworkBundleListener{
	
	public static final int PRIORITY_LOWEST = Integer.MIN_VALUE;
	public static final int PRIORITY_LOW = -1;
	public static final int PRIORITY_NORMAL = 0;
	public static final int PRIORITY_HIGH = 1;
	public static final int PRIORITY_HIGHEST = Integer.MAX_VALUE;
	
	
	public int getPriority();
	public void bindToMonitor(BundleContext bundleContext);
	public void unbindFromMonitor(BundleContext bundleContext);
	public void onInstall(Bundle bundle);
	public void onStart(Bundle bundle);
	public void onStop(Bundle bundle);
	public void onUnresolved(Bundle bundle);
	public void onResolve(Bundle target);
	public void onStarting(Bundle target);
	public void onStopping(Bundle target);
}
